
#ifndef JELLY_SHARE_SRC_EMULE_AICH_HASH_H_
#define JELLY_SHARE_SRC_EMULE_AICH_HASH_H_

#include "src/type_define.h"
#include "src/utility/rule.h"

namespace jellyfish
{
	namespace emule
	{
		class aich_hash 
		{
		public:
			enum
			{
				hash_size = 20
			};
			aich_hash();
			aich_hash(uint8* data);
			aich_hash(const aich_hash& k1);
			~aich_hash();
			aich_hash& operator=(const aich_hash& k1);
			void read(const uint8* data);
			uint8* get_raw_hash();
//			uint32 DecodeBase32(const wxString& base32);
			friend bool operator==(const aich_hash& k1,const aich_hash& k2);
			friend bool operator!=(const aich_hash& k1,const aich_hash& k2);
		private:
			uint8 buffer[hash_size];
		};

	}
}


#endif  // JELLY_SHARE_SRC_EMULE_AICH_HASH_H_